<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>NoObjectType (Closure Compiler)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="NoObjectType (Closure Compiler)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/google/javascript/rhino/jstype/ModificationVisitor.html" title="class in com.google.javascript.rhino.jstype"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../com/google/javascript/rhino/jstype/NoType.html" title="class in com.google.javascript.rhino.jstype"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/google/javascript/rhino/jstype/NoObjectType.html" target="_top">Frames</a></li>
<li><a href="NoObjectType.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_classes_inherited_from_class_com.google.javascript.rhino.jstype.JSType">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_com.google.javascript.rhino.jstype.JSType">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.google.javascript.rhino.jstype</div>
<h2 title="Class NoObjectType" class="title">Class NoObjectType</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">com.google.javascript.rhino.jstype.JSType</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">com.google.javascript.rhino.jstype.ObjectType</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">com.google.javascript.rhino.jstype.FunctionType</a></li>
<li>
<ul class="inheritance">
<li>com.google.javascript.rhino.jstype.NoObjectType</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../com/google/javascript/rhino/jstype/StaticScope.html" title="interface in com.google.javascript.rhino.jstype">StaticScope</a>&lt;<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a>&gt;, java.io.Serializable</dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../com/google/javascript/rhino/jstype/NoType.html" title="class in com.google.javascript.rhino.jstype">NoType</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">NoObjectType</span>
extends <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></pre>
<div class="block">The bottom Object type, representing the subclass of all objects.

 Although JavaScript programmers can't explicitly denote the bottom
 Object type, it comes up in static analysis. For example, if we have:
 <code>
 var x = function() {};
 if (x instanceof Array) {
   f(x);
 }
 </code>
 We need to be able to assign <code>x</code> a type within the <code>f(x)</code>
 call. It has no possible type, but <code>x</code> would not be legal if f
 expected a string. So we assign it the <code>NoObjectType</code>.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="http://en.wikipedia.org/wiki/Bottom_type">Bottom types</a>, 
<a href="../../../../../serialized-form.html#com.google.javascript.rhino.jstype.NoObjectType">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested_class_summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested_classes_inherited_from_class_com.google.javascript.rhino.jstype.JSType">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;com.google.javascript.rhino.jstype.<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a></h3>
<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.TypePair.html" title="class in com.google.javascript.rhino.jstype">JSType.TypePair</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_com.google.javascript.rhino.jstype.JSType">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;com.google.javascript.rhino.jstype.<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a></h3>
<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#EMPTY_TYPE_COMPONENT">EMPTY_TYPE_COMPONENT</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#ENUMDECL">ENUMDECL</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#NOT_A_CLASS">NOT_A_CLASS</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#NOT_A_TYPE">NOT_A_TYPE</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#NOT_ENUMDECL">NOT_ENUMDECL</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#templateTypeMap">templateTypeMap</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#UNKNOWN_NAME">UNKNOWN_NAME</a></code></li>
</ul>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#getConstructor()">getConstructor</a></strong>()</code>
<div class="block">Gets this object's constructor.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.Iterable&lt;<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#getCtorExtendedInterfaces()">getCtorExtendedInterfaces</a></strong>()</code>
<div class="block">Gets the interfaces extended by the interface associated with this type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.Iterable&lt;<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#getCtorImplementedInterfaces()">getCtorImplementedInterfaces</a></strong>()</code>
<div class="block">Gets the interfaces implemented by the ctor associated with this type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#getImplicitPrototype()">getImplicitPrototype</a></strong>()</code>
<div class="block">Gets the implicit prototype (a.k.a.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#getOwnerFunction()">getOwnerFunction</a></strong>()</code>
<div class="block">Gets the owner of this if it's a function prototype.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#getReferenceName()">getReferenceName</a></strong>()</code>
<div class="block">Gets the reference name for this object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#hashCode()">hashCode</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#hasReferenceName()">hasReferenceName</a></strong>()</code>
<div class="block">Returns true if the object is named.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#isNativeObjectType()">isNativeObjectType</a></strong>()</code>
<div class="block">Whether this is a built-in object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#isNoObjectType()">isNoObjectType</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#isSubtype(com.google.javascript.rhino.jstype.JSType)">isSubtype</a></strong>(<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a>&nbsp;that)</code>
<div class="block">A function is a subtype of another if their call methods are related via
 subtyping and <code>this</code> is a subtype of <code>that</code> with regard to
 the prototype chain.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#matchConstraint(com.google.javascript.rhino.jstype.JSType)">matchConstraint</a></strong>(<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a>&nbsp;constraint)</code>
<div class="block">Modify this type so that it matches the specified type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#matchesNumberContext()">matchesNumberContext</a></strong>()</code>
<div class="block">This predicate is used to test whether a given type can appear in a
 numeric context, such as an operand of a multiply operator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#matchesObjectContext()">matchesObjectContext</a></strong>()</code>
<div class="block">This predicate is used to test whether a given type can appear in an
 <code>Object</code> context, such as the expression in a with statement.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#matchesStringContext()">matchesStringContext</a></strong>()</code>
<div class="block">This predicate is used to test whether a given type can appear in a
 <code>String</code> context, such as an operand of a string concat (+) operator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#matchRecordTypeConstraint(com.google.javascript.rhino.jstype.ObjectType)">matchRecordTypeConstraint</a></strong>(<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a>&nbsp;constraintObj)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#removeProperty(java.lang.String)">removeProperty</a></strong>(java.lang.String&nbsp;name)</code>
<div class="block">Removes the declared or inferred property from this ObjectType.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#setPropertyJSDocInfo(java.lang.String, com.google.javascript.rhino.JSDocInfo)">setPropertyJSDocInfo</a></strong>(java.lang.String&nbsp;propertyName,
                    <a href="../../../../../com/google/javascript/rhino/JSDocInfo.html" title="class in com.google.javascript.rhino">JSDocInfo</a>&nbsp;info)</code>
<div class="block">Sets the docInfo for the specified property from the
 <a href="../../../../../com/google/javascript/rhino/JSDocInfo.html" title="class in com.google.javascript.rhino"><code>JSDocInfo</code></a> on its definition.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#toMaybeFunctionType()">toMaybeFunctionType</a></strong>()</code>
<div class="block">Downcasts this to a FunctionType, or returns null if this is not
 a function.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#unboxesTo()">unboxesTo</a></strong>()</code>
<div class="block">Turn an object type to its corresponding scalar type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/google/javascript/rhino/jstype/NoObjectType.html#visit(com.google.javascript.rhino.jstype.Visitor)">visit</a></strong>(<a href="../../../../../com/google/javascript/rhino/jstype/Visitor.html" title="interface in com.google.javascript.rhino.jstype">Visitor</a>&lt;T&gt;&nbsp;visitor)</code>
<div class="block">Visit this type with the given visitor.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_com.google.javascript.rhino.jstype.FunctionType">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;com.google.javascript.rhino.jstype.<a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></h3>
<code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#canBeCalled()">canBeCalled</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#clearCachedValues()">clearCachedValues</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#cloneWithoutArrowType()">cloneWithoutArrowType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#extendTemplateTypeMapBasedOn(com.google.javascript.rhino.jstype.ObjectType)">extendTemplateTypeMapBasedOn</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getAllExtendedInterfaces()">getAllExtendedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getAllImplementedInterfaces()">getAllImplementedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getBindReturnType(int)">getBindReturnType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getExtendedInterfaces()">getExtendedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getExtendedInterfacesCount()">getExtendedInterfacesCount</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getImplementedInterfaces()">getImplementedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getInstanceType()">getInstanceType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getMaxArguments()">getMaxArguments</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getMinArguments()">getMinArguments</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getOwnImplementedInterfaces()">getOwnImplementedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getOwnPropertyNames()">getOwnPropertyNames</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getParameters()">getParameters</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getParametersNode()">getParametersNode</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getPropertyType(java.lang.String)">getPropertyType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getPrototype()">getPrototype</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getReturnType()">getReturnType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getSlot(java.lang.String)">getSlot</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getSource()">getSource</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getSubTypes()">getSubTypes</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getSuperClassConstructor()">getSuperClassConstructor</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getTopDefiningInterface(com.google.javascript.rhino.jstype.ObjectType, java.lang.String)">getTopDefiningInterface</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getTopMostDefiningType(java.lang.String)">getTopMostDefiningType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#getTypeOfThis()">getTypeOfThis</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#hasAnyTemplateTypesInternal()">hasAnyTemplateTypesInternal</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#hasCachedValues()">hasCachedValues</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#hasEqualCallType(com.google.javascript.rhino.jstype.FunctionType)">hasEqualCallType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#hasImplementedInterfaces()">hasImplementedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#hasInstanceType()">hasInstanceType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#isConstructor()">isConstructor</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#isInstanceType()">isInstanceType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#isInterface()">isInterface</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#isOrdinaryFunction()">isOrdinaryFunction</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#isReturnTypeInferred()">isReturnTypeInferred</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#makesDicts()">makesDicts</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#makesStructs()">makesStructs</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#setDict()">setDict</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#setExtendedInterfaces(java.util.List)">setExtendedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#setImplementedInterfaces(java.util.List)">setImplementedInterfaces</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#setPrototypeBasedOn(com.google.javascript.rhino.jstype.ObjectType)">setPrototypeBasedOn</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#setSource(com.google.javascript.rhino.Node)">setSource</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#setStruct()">setStruct</a>, <a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#toDebugHashCodeString()">toDebugHashCodeString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_com.google.javascript.rhino.jstype.ObjectType">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;com.google.javascript.rhino.jstype.<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a></h3>
<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#cast(com.google.javascript.rhino.jstype.JSType)">cast</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#createDelegateSuffix(java.lang.String)">createDelegateSuffix</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#defineDeclaredProperty(java.lang.String, com.google.javascript.rhino.jstype.JSType, com.google.javascript.rhino.Node)">defineDeclaredProperty</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#defineInferredProperty(java.lang.String, com.google.javascript.rhino.jstype.JSType, com.google.javascript.rhino.Node)">defineInferredProperty</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#defineSynthesizedProperty(java.lang.String, com.google.javascript.rhino.jstype.JSType, com.google.javascript.rhino.Node)">defineSynthesizedProperty</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#findPropertyType(java.lang.String)">findPropertyType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getDisplayName()">getDisplayName</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getJSDocInfo()">getJSDocInfo</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getNormalizedReferenceName()">getNormalizedReferenceName</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getOwnPropertyJSDocInfo(java.lang.String)">getOwnPropertyJSDocInfo</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getOwnSlot(java.lang.String)">getOwnSlot</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getParentScope()">getParentScope</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getPossibleToBooleanOutcomes()">getPossibleToBooleanOutcomes</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getPropertiesCount()">getPropertiesCount</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getPropertyNames()">getPropertyNames</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getPropertyNode(java.lang.String)">getPropertyNode</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getRootNode()">getRootNode</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getTemplateTypes()">getTemplateTypes</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#hasOwnProperty(java.lang.String)">hasOwnProperty</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#hasProperty(java.lang.String)">hasProperty</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#isFunctionPrototypeType()">isFunctionPrototypeType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#isObject()">isObject</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#isPropertyInExterns(java.lang.String)">isPropertyInExterns</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#isPropertyTypeDeclared(java.lang.String)">isPropertyTypeDeclared</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#isPropertyTypeInferred(java.lang.String)">isPropertyTypeInferred</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#isUnknownType()">isUnknownType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#setJSDocInfo(com.google.javascript.rhino.JSDocInfo)">setJSDocInfo</a>, <a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#testForEquality(com.google.javascript.rhino.jstype.JSType)">testForEquality</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_com.google.javascript.rhino.jstype.JSType">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;com.google.javascript.rhino.jstype.<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a></h3>
<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#autobox()">autobox</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#autoboxesTo()">autoboxesTo</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#canCastTo(com.google.javascript.rhino.jstype.JSType)">canCastTo</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#canTestForEqualityWith(com.google.javascript.rhino.jstype.JSType)">canTestForEqualityWith</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#canTestForShallowEqualityWith(com.google.javascript.rhino.jstype.JSType)">canTestForShallowEqualityWith</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#clearResolved()">clearResolved</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#collapseUnion()">collapseUnion</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#dereference()">dereference</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#differsFrom(com.google.javascript.rhino.jstype.JSType)">differsFrom</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#equals(java.lang.Object)">equals</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#extendTemplateTypeMap(com.google.javascript.rhino.jstype.TemplateTypeMap)">extendTemplateTypeMap</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#forceResolve(com.google.javascript.rhino.ErrorReporter, com.google.javascript.rhino.jstype.StaticScope)">forceResolve</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getGreatestSubtype(com.google.javascript.rhino.jstype.JSType)">getGreatestSubtype</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getLeastSupertype(com.google.javascript.rhino.jstype.JSType)">getLeastSupertype</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getRestrictedTypeGivenToBooleanOutcome(boolean)">getRestrictedTypeGivenToBooleanOutcome</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getTemplateTypeMap()">getTemplateTypeMap</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getTypesUnderEquality(com.google.javascript.rhino.jstype.JSType)">getTypesUnderEquality</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getTypesUnderInequality(com.google.javascript.rhino.jstype.JSType)">getTypesUnderInequality</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getTypesUnderShallowEquality(com.google.javascript.rhino.jstype.JSType)">getTypesUnderShallowEquality</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#getTypesUnderShallowInequality(com.google.javascript.rhino.jstype.JSType)">getTypesUnderShallowInequality</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#hasAnyTemplateTypes()">hasAnyTemplateTypes</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#hasDisplayName()">hasDisplayName</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isAllType()">isAllType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isArrayType()">isArrayType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isBooleanObjectType()">isBooleanObjectType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isBooleanValueType()">isBooleanValueType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isCheckedUnknownType()">isCheckedUnknownType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isDateType()">isDateType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isDict()">isDict</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isEmptyType()">isEmptyType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isEnumElementType()">isEnumElementType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isEnumType()">isEnumType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isEquivalent(com.google.javascript.rhino.jstype.JSType, com.google.javascript.rhino.jstype.JSType)">isEquivalent</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isEquivalentTo(com.google.javascript.rhino.jstype.JSType)">isEquivalentTo</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isFunctionType()">isFunctionType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isGlobalThisType()">isGlobalThisType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isInvariant(com.google.javascript.rhino.jstype.JSType)">isInvariant</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNominalConstructor()">isNominalConstructor</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNominalType()">isNominalType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNoResolvedType()">isNoResolvedType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNoType()">isNoType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNullable()">isNullable</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNullType()">isNullType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNumber()">isNumber</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNumberObjectType()">isNumberObjectType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNumberValueType()">isNumberValueType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isRecordType()">isRecordType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isRegexpType()">isRegexpType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isResolved()">isResolved</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isString()">isString</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isStringObjectType()">isStringObjectType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isStringValueType()">isStringValueType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isStruct()">isStruct</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isTemplateType()">isTemplateType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isTemplatizedType()">isTemplatizedType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isUnionType()">isUnionType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isVoidType()">isVoidType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#matchesInt32Context()">matchesInt32Context</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#matchesUint32Context()">matchesUint32Context</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#resolve(com.google.javascript.rhino.ErrorReporter, com.google.javascript.rhino.jstype.StaticScope)">resolve</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#restrictByNotNullOrUndefined()">restrictByNotNullOrUndefined</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#setValidator(com.google.common.base.Predicate)">setValidator</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toAnnotationString()">toAnnotationString</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeEnumElementType()">toMaybeEnumElementType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeEnumType()">toMaybeEnumType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeFunctionType(com.google.javascript.rhino.jstype.JSType)">toMaybeFunctionType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeTemplateType()">toMaybeTemplateType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeTemplateType(com.google.javascript.rhino.jstype.JSType)">toMaybeTemplateType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeTemplatizedType()">toMaybeTemplatizedType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeTemplatizedType(com.google.javascript.rhino.jstype.JSType)">toMaybeTemplatizedType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeUnionType()">toMaybeUnionType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toObjectType()">toObjectType</a>, <a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toString()">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="isSubtype(com.google.javascript.rhino.jstype.JSType)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSubtype</h4>
<pre>public&nbsp;boolean&nbsp;isSubtype(<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a>&nbsp;that)</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#isSubtype(com.google.javascript.rhino.jstype.JSType)">FunctionType</a></code></strong></div>
<div class="block">A function is a subtype of another if their call methods are related via
 subtyping and <code>this</code> is a subtype of <code>that</code> with regard to
 the prototype chain.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#isSubtype(com.google.javascript.rhino.jstype.JSType)">isSubtype</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd><code>this &amp;lt;: that</code></dd></dl>
</li>
</ul>
<a name="toMaybeFunctionType()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toMaybeFunctionType</h4>
<pre>public&nbsp;<a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a>&nbsp;toMaybeFunctionType()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#toMaybeFunctionType()">JSType</a></code></strong></div>
<div class="block">Downcasts this to a FunctionType, or returns null if this is not
 a function.

 For the purposes of this function, we define a MaybeFunctionType as any
 type in the sub-lattice
 { x | LEAST_FUNCTION_TYPE <= x <= GREATEST_FUNCTION_TYPE }
 This definition excludes bottom types like NoType and NoObjectType.

 This definition is somewhat arbitrary and axiomatic, but this is the
 definition that makes the most sense for the most callers.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#toMaybeFunctionType()">toMaybeFunctionType</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></code></dd>
</dl>
</li>
</ul>
<a name="isNoObjectType()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNoObjectType</h4>
<pre>public&nbsp;boolean&nbsp;isNoObjectType()</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#isNoObjectType()">isNoObjectType</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a></code></dd>
</dl>
</li>
</ul>
<a name="getImplicitPrototype()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getImplicitPrototype</h4>
<pre>public&nbsp;<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a>&nbsp;getImplicitPrototype()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getImplicitPrototype()">ObjectType</a></code></strong></div>
<div class="block">Gets the implicit prototype (a.k.a. the <code>[[Prototype]]</code> property).</div>
</li>
</ul>
<a name="getReferenceName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReferenceName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getReferenceName()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getReferenceName()">ObjectType</a></code></strong></div>
<div class="block">Gets the reference name for this object. This includes named types
 like constructors, prototypes, and enums. It notably does not include
 literal types like strings and booleans and structural types.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the object's name or <code>null</code> if this is an anonymous
         object</dd></dl>
</li>
</ul>
<a name="matchesNumberContext()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>matchesNumberContext</h4>
<pre>public&nbsp;boolean&nbsp;matchesNumberContext()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#matchesNumberContext()">JSType</a></code></strong></div>
<div class="block">This predicate is used to test whether a given type can appear in a
 numeric context, such as an operand of a multiply operator.</div>
</li>
</ul>
<a name="matchesObjectContext()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>matchesObjectContext</h4>
<pre>public&nbsp;boolean&nbsp;matchesObjectContext()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#matchesObjectContext()">JSType</a></code></strong></div>
<div class="block">This predicate is used to test whether a given type can appear in an
 <code>Object</code> context, such as the expression in a with statement.

 Most types we will encounter, except notably <code>null</code>, have at least
 the potential for converting to <code>Object</code>.  Host defined objects can
 get peculiar.</div>
</li>
</ul>
<a name="matchesStringContext()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>matchesStringContext</h4>
<pre>public&nbsp;boolean&nbsp;matchesStringContext()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#matchesStringContext()">JSType</a></code></strong></div>
<div class="block">This predicate is used to test whether a given type can appear in a
 <code>String</code> context, such as an operand of a string concat (+) operator.

 All types have at least the potential for converting to <code>String</code>.
 When we add externally defined types, such as a browser OM, we may choose
 to add types that do not automatically convert to <code>String</code>.</div>
</li>
</ul>
<a name="hashCode()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre>public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#hashCode()">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></code></dd>
</dl>
</li>
</ul>
<a name="removeProperty(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeProperty</h4>
<pre>public&nbsp;boolean&nbsp;removeProperty(java.lang.String&nbsp;name)</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#removeProperty(java.lang.String)">ObjectType</a></code></strong></div>
<div class="block">Removes the declared or inferred property from this ObjectType.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the property's name</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the property was removed successfully. False if the
         property did not exist, or could not be removed.</dd></dl>
</li>
</ul>
<a name="setPropertyJSDocInfo(java.lang.String, com.google.javascript.rhino.JSDocInfo)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPropertyJSDocInfo</h4>
<pre>public&nbsp;void&nbsp;setPropertyJSDocInfo(java.lang.String&nbsp;propertyName,
                        <a href="../../../../../com/google/javascript/rhino/JSDocInfo.html" title="class in com.google.javascript.rhino">JSDocInfo</a>&nbsp;info)</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#setPropertyJSDocInfo(java.lang.String, com.google.javascript.rhino.JSDocInfo)">ObjectType</a></code></strong></div>
<div class="block">Sets the docInfo for the specified property from the
 <a href="../../../../../com/google/javascript/rhino/JSDocInfo.html" title="class in com.google.javascript.rhino"><code>JSDocInfo</code></a> on its definition.</div>
<dl><dd><code>info</code> - <code>JSDocInfo</code> for the property definition. May be
        <code>null</code>.</dd></dl>
</li>
</ul>
<a name="visit(com.google.javascript.rhino.jstype.Visitor)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visit</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;visit(<a href="../../../../../com/google/javascript/rhino/jstype/Visitor.html" title="interface in com.google.javascript.rhino.jstype">Visitor</a>&lt;T&gt;&nbsp;visitor)</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#visit(com.google.javascript.rhino.jstype.Visitor)">JSType</a></code></strong></div>
<div class="block">Visit this type with the given visitor.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html#visit(com.google.javascript.rhino.jstype.Visitor)">visit</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the value returned by the visitor</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../com/google/javascript/rhino/jstype/Visitor.html" title="interface in com.google.javascript.rhino.jstype"><code>Visitor</code></a></dd></dl>
</li>
</ul>
<a name="getConstructor()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConstructor</h4>
<pre>public&nbsp;<a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a>&nbsp;getConstructor()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getConstructor()">ObjectType</a></code></strong></div>
<div class="block">Gets this object's constructor.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>this object's constructor or <code>null</code> if it is a native
 object (constructed natively v.s. by instantiation of a function)</dd></dl>
</li>
</ul>
<a name="unboxesTo()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unboxesTo</h4>
<pre>public&nbsp;<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a>&nbsp;unboxesTo()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#unboxesTo()">JSType</a></code></strong></div>
<div class="block">Turn an object type to its corresponding scalar type.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#unboxesTo()">unboxesTo</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the unboxed type or <code>null</code> if this type does not unbox.</dd></dl>
</li>
</ul>
<a name="hasReferenceName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasReferenceName</h4>
<pre>public&nbsp;boolean&nbsp;hasReferenceName()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#hasReferenceName()">ObjectType</a></code></strong></div>
<div class="block">Returns true if the object is named.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#hasReferenceName()">hasReferenceName</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the object is named, false if it is anonymous</dd></dl>
</li>
</ul>
<a name="isNativeObjectType()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNativeObjectType</h4>
<pre>public&nbsp;boolean&nbsp;isNativeObjectType()</pre>
<div class="block">Whether this is a built-in object.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#isNativeObjectType()">isNativeObjectType</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a></code></dd>
</dl>
</li>
</ul>
<a name="getOwnerFunction()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOwnerFunction</h4>
<pre>public&nbsp;<a href="../../../../../com/google/javascript/rhino/jstype/FunctionType.html" title="class in com.google.javascript.rhino.jstype">FunctionType</a>&nbsp;getOwnerFunction()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getOwnerFunction()">ObjectType</a></code></strong></div>
<div class="block">Gets the owner of this if it's a function prototype.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getOwnerFunction()">getOwnerFunction</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a></code></dd>
</dl>
</li>
</ul>
<a name="getCtorImplementedInterfaces()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCtorImplementedInterfaces</h4>
<pre>public&nbsp;java.lang.Iterable&lt;<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a>&gt;&nbsp;getCtorImplementedInterfaces()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getCtorImplementedInterfaces()">ObjectType</a></code></strong></div>
<div class="block">Gets the interfaces implemented by the ctor associated with this type.
 Intended to be overridden by subclasses.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getCtorImplementedInterfaces()">getCtorImplementedInterfaces</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a></code></dd>
</dl>
</li>
</ul>
<a name="getCtorExtendedInterfaces()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCtorExtendedInterfaces</h4>
<pre>public&nbsp;java.lang.Iterable&lt;<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a>&gt;&nbsp;getCtorExtendedInterfaces()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getCtorExtendedInterfaces()">ObjectType</a></code></strong></div>
<div class="block">Gets the interfaces extended by the interface associated with this type.
 Intended to be overridden by subclasses.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html#getCtorExtendedInterfaces()">getCtorExtendedInterfaces</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a></code></dd>
</dl>
</li>
</ul>
<a name="matchConstraint(com.google.javascript.rhino.jstype.JSType)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>matchConstraint</h4>
<pre>public&nbsp;void&nbsp;matchConstraint(<a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a>&nbsp;constraint)</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#matchConstraint(com.google.javascript.rhino.jstype.JSType)">JSType</a></code></strong></div>
<div class="block">Modify this type so that it matches the specified type.

 This is useful for reverse type-inference, where we want to
 infer that an object literal matches its constraint (much like
 how the java compiler does reverse-inference to figure out generics).</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html#matchConstraint(com.google.javascript.rhino.jstype.JSType)">matchConstraint</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/javascript/rhino/jstype/JSType.html" title="class in com.google.javascript.rhino.jstype">JSType</a></code></dd>
</dl>
</li>
</ul>
<a name="matchRecordTypeConstraint(com.google.javascript.rhino.jstype.ObjectType)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>matchRecordTypeConstraint</h4>
<pre>public&nbsp;void&nbsp;matchRecordTypeConstraint(<a href="../../../../../com/google/javascript/rhino/jstype/ObjectType.html" title="class in com.google.javascript.rhino.jstype">ObjectType</a>&nbsp;constraintObj)</pre>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/google/javascript/rhino/jstype/ModificationVisitor.html" title="class in com.google.javascript.rhino.jstype"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../com/google/javascript/rhino/jstype/NoType.html" title="class in com.google.javascript.rhino.jstype"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/google/javascript/rhino/jstype/NoObjectType.html" target="_top">Frames</a></li>
<li><a href="NoObjectType.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_classes_inherited_from_class_com.google.javascript.rhino.jstype.JSType">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_com.google.javascript.rhino.jstype.JSType">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
